//***************************************************************************************

//                       利用Blobf分析实现斑点检测-其中检测最小区域为100，最大区域为8000

//***************************************************************************************

#include "ImageDecMat.hpp"

void ImageDecMat::on_spotDetector(cv::Mat Image1,cv::Mat& Image2)
{
    cv::SimpleBlobDetector::Params params;
    params.minThreshold = 40;
    params.maxThreshold = 160;
    params.thresholdStep = 5;
    params.minArea = 100;//检测最小区域
    params.minConvexity = .05f;
    params.minInertiaRatio = .05f;
    params.maxArea = 8000;//检测最大区域
    
    cv::SimpleBlobDetector detector(params);
    
    std::vector<cv::KeyPoint> key_points;
    
    detector.detect(Image1, key_points);
    
    
    /*Mat output_img;
     output_img = img;*/
    drawKeypoints(Image1, key_points, Image2, cv::Scalar(0, 0, 255), cv::DrawMatchesFlags::DRAW_RICH_KEYPOINTS);
}
